package com.un.ebs.purchase.domain;

import com.un.ebs.product.enums.ProductPurchaseTypeEnum;

import java.util.Date;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import org.springframework.stereotype.Component;
import lombok.Data;
import com.un.ebs.core.metadata.DbField;

/**
 * (PurchaseOrderItemExt)表实体类
 *
 * @author liubo
 * @since 2020-11-03 08:14:53
 */
@Data
@Component
@TableName("v_purchase_order_item_ext")
@SuppressWarnings("serial")
public class PurchaseOrderItemExt extends Model<PurchaseOrderItemExt> {

                
    @DbField(name = "order_id",  length = 40 , precision = 0)
    private String orderId;
                
    @DbField(name = "sku_id",  length = 40 , precision = 0)
    private String skuId;
                
    @DbField(name = "sku_code",  length = 100 , precision = 0)
    private String skuCode;
                
    @DbField(name = "name_as",  length = 100 , precision = 0)
    private String nameAs;

    @DbField(name = "purchase_type", length = -1, precision = 0)
    private ProductPurchaseTypeEnum purchaseType;
                
    @DbField(name = "qty",  length = 38 , precision = 4)
    private Double qty;
                
    @DbField(name = "deliver_qty",  length = 38 , precision = 4)
    private Double deliverQty;

    @DbField(name = "invoice_qty",  length = 38 , precision = 4)
    private Double invoiceQty;
                
    @DbField(name = "price",  length = 18 , precision = 4)
    private Double price;
                
    @DbField(name = "production_order_item_id",  length = 40 , precision = 0)
    private String productionOrderItemId;
                
    @DbField(name = "production_order_code",  length = 100 , precision = 0)
    private String productionOrderCode;

    @DbField(name = "production_order_id",  length = 40 , precision = 0)
    private String productionOrderId;

    @DbField(name = "is_services",  length = -1 , precision = 0)
    private Boolean isServices;
                
    @DbField(name = "code",  length = 100 , precision = 0)
    private String code;
                
    @DbField(name = "contract_code",  length = 100 , precision = 0)
    private String contractCode;
                
    @DbField(name = "supplier_ent_id",  length = 40 , precision = 0)
    private String supplierEntId;
                
    @DbField(name = "supplier_ent_name",  length = 100 , precision = 0)
    private String supplierEntName;
                
    @DbField(name = "submit_status",  length = -1 , precision = 0)
    private Boolean submitStatus;
                
    @DbField(name = "submit_time",  length = -1 , precision = 0)
    private Date submitTime;
                
    @DbField(name = "submit_at",  length = 40 , precision = 0)
    private String submitAt;

    @DbField(name = "submit_at_name", length = 100, precision = 0)
    private String submitAtName;

    @TableLogic
    @DbField(name = "is_delete", length = -1, precision = 0)
    private Boolean isDelete;

    @DbField(name = "tenant_id", length = 40, precision = 0)
    private String tenantId;

    @DbField(name = "flag", length = -1, precision = 0)
    private Integer flag;

    @DbField(name = "diff_qty", length = 38, precision = 4)
    private Double diffQty;


}